//
//  LSStatus.swift
//  新浪微博---01次
//
//  Created by 李宗帅 on 16/5/6.
//  Copyright © 2016年 LS. All rights reserved.
//

import UIKit

class LSStatus: NSObject {

//    created_at	string	微博创建时间
    var created_at: String?
    
//    id	int64	微博ID
    var id: Int = 0
//    mid	int64	微博MID
    var idstr: String?
//    idstr	string	字符串型的微博ID
    var text: String?
//    text	string	微博信息内容
    var source: String?
//    source	string	微博来源
//    user object 微博作者的用户信息字段 详细 --  这个是对象类型,比较特殊,我们把上边的处理完才做这个
    // 手动的调用一下 赋值
    var user:LSUserStatus?
    
    //reposts_count	int	转发数
    var reposts_count: Int = 0
    //comments_count	int	评论数
    var comments_count: Int = 0
    //attitudes_count	int	表态数
    var attitudes_count: Int = 0
    //转发微博
    var retweeted_status:LSStatus?
    
    //配图
    var pic_urls:[LSPhotoViewModel]?
    
    init(dic :[String: AnyObject]){
        super.init()
        //kvc赋值  记得一定要kvc赋值之后 再解析其中的某一项属性,顺序如果错了 后边调用KVC,解析的值会被KVC覆盖
        setValuesForKeysWithDictionary(dic)
        //解析用户信息数据
        if let userDic = dic["user"] as? [String: AnyObject]{
            
            user = LSUserStatus(dic: userDic)
        }
        //解析转发微博数据
        if let retweeted_statusDic = dic["retweeted_status"] as? [String: AnyObject] {
            retweeted_status = LSStatus(dic:retweeted_statusDic)
        }
        
        if let pic_URLs = dic["pic_urls"] as? [[String: AnyObject]] {
            
            pic_urls = [LSPhotoViewModel]()

            
            for pic_url in pic_URLs {
                
                
                let model = LSPhoto(dic: pic_url)
                //注意  往数组里边添加数据之前 先初始化一下
                //在这里进行model的转换
                let viewModel = LSPhotoViewModel(model: model)
                pic_urls?.append(viewModel)
                
            }
        }
    }
    
    override func setValue(value: AnyObject?, forUndefinedKey key: String) {}

}
